1. Field of the Invention
The present invention relates to an access control apparatus that can control access to a memory. The present invention also relates to an access control system, a processor, an access control method, a memory access control apparatus, a memory access control system, and a memory access control method.
2. Description of the Related Art
In a modern computer system, a multiprogramming method by which several processes (programs, tasks, or jobs) are switched is employed, so as to effectively utilize the various resources in the computer system such as a memory or CPU.
In such a system, data in a memory to be used exclusively by a process might be seen or damaged through overwrite by another process.
To counter this problem, a technique of comparing the key of a process with the storage key of the memory to be accessed has been widely used to determine whether access should be allowed. The “storage key” is the information that is recorded for every predetermined size of memory (4 KB, for example). Such a technique is disclosed in “z/Architecture Principles of Operation”, IBM, SA22-7832-00, pages 3-9 to 3-12, December 2000.
However, in a memory protection system that employs the above described storage key, it is necessary to prepare a memory for storing the storage key as well as the memory for storing data. As a result, the amount of hardware increases.
Also, for example, assume that the unit of protection is 4 KB per page. When a small amount of data is protected, an unused memory region is left in the memory. This problem can be solved by allotting a storage key to each smaller memory region. However, such a solution requires a larger number of memories for storing the storage keys.
Furthermore, when a failure occurs in the memory, an access can be made to the memory, resulting in unauthorized data reading.